<!DOCTYPE html>
<html$if(lang)$ lang="$lang$"$endif$$if(dir)$ dir="$dir$"$endif$>
<head>
  <meta charset="utf-8">
  <meta name="generator" content="pandoc">
$for(author-meta)$
  <meta name="author" content="$author-meta$">
$endfor$
$if(date-meta)$
  <meta name="dcterms.date" content="$date-meta$">
$endif$
$if(keywords)$
  <meta name="keywords" content="$for(keywords)$$keywords$$sep$, $endfor$">
$endif$
  <title>$if(title-prefix)$$title-prefix$ – $endif$$pagetitle$</title>
  <meta name="apple-mobile-web-app-capable" content="yes">
  <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
  <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, minimal-ui">
  <link rel="stylesheet" href="$revealjs-url$/css/reveal.css">
  <style type="text/css">code{white-space: pre;}</style>
$if(highlighting-css)$
    <style type="text/css">
$highlighting-css$
    </style>
$endif$
$for(css)$
    <link rel="stylesheet" href="$css$"/>
$endfor$


    <!-- For syntax highlighting using highlight.js-->
$if(hlss)$
    <link rel="stylesheet" href="$revealjs-url$/lib/css/$hlss$.css">
$endif$

  <style>
    $styles.html()$
  </style>
$if(theme)$
  <link rel="stylesheet" href="$revealjs-url$/css/theme/$theme$.css" id="theme">
$else$
  <link rel="stylesheet" href="$revealjs-url$/css/theme/black.css" id="theme">
$endif$
  <!-- Printing and PDF exports -->
<link rel="stylesheet" media="print" href="$revealjs-url$/css/print/pdf.css" />
  <script>
    var link = document.createElement( 'link' );
    link.rel = 'stylesheet';
    link.type = 'text/css';
    link.href = window.location.search.match( /print-pdf/gi ) ? '$revealjs-url$/css/print/pdf.css' : '$revealjs-url$/css/print/paper.css';
    document.getElementsByTagName( 'head' )[0].appendChild( link );
  </script>
  <!--[if lt IE 9]>
  <script src="$revealjs-url$/lib/js/html5shiv.js"></script>
  <![endif]-->
$if(math)$
  $math$
$endif$
$for(header-includes)$
  $header-includes$
$endfor$
</head>
<body>
$for(include-before)$
$include-before$
$endfor$
  <div class="reveal">
    <div class="slides">

$if(title)$
<section id="$idprefix$title-slide"$for(title-slide-attributes/pairs)$ $it.key$="$it.value$"$endfor$>
  <h1 class="title">$title$</h1>
$if(subtitle)$
  <p class="subtitle">$subtitle$</p>
$endif$
$for(author)$
  <p class="author">$author$</p>
$endfor$
$if(date)$
  <p class="date">$date$</p>
$endif$
</section>
$endif$
$if(toc)$
<section id="$idprefix$TOC">
$table-of-contents$
</section>
$endif$

$body$
    </div>
  </div>

  <script src="$revealjs-url$/lib/js/head.min.js"></script>
  <script src="$revealjs-url$/js/reveal.js"></script>

  <script>

      // Full list of configuration options available at:
      // https://github.com/hakimel/reveal.js#configuration
      Reveal.initialize({
$if(controls)$
        // Display controls in the bottom right corner
        controls: $controls$,
$endif$
$if(progress)$
        // Display a presentation progress bar
        progress: $progress$,
$endif$
$if(slideNumber)$
        // Display the page number of the current slide
        slideNumber: $slideNumber$,
$endif$
        // Push each slide change to the browser history
$if(history)$
        history: $history$,
$else$
        history: true,
$endif$
$if(keyboard)$
        // Enable keyboard shortcuts for navigation
        keyboard: $keyboard$,
$endif$
$if(overview)$
        // Enable the slide overview mode
        overview: $overview$,
$endif$
$if(center)$
        // Vertical centering of slides
        center: $center$,
$endif$
$if(touch)$
        // Enables touch navigation on devices with touch input
        touch: $touch$,
$endif$
$if(loop)$
        // Loop the presentation
        loop: $loop$,
$endif$
$if(rtl)$
        // Change the presentation direction to be RTL
        rtl: $rtl$,
$endif$
$if(navigationMode)$
        // see https://github.com/hakimel/reveal.js/#navigation-mode
        navigationMode: '$navigationMode$',
$endif$
$if(fragments)$
        // Turns fragments on and off globally
        fragments: $fragments$,
$endif$
$if(embedded)$
        // Flags if the presentation is running in an embedded mode,
        // i.e. contained within a limited portion of the screen
        embedded: $embedded$,
$endif$
$if(help)$
        // Flags if we should show a help overlay when the questionmark
        // key is pressed
        help: $help$,
$endif$
$if(showNotes)$
        // Flags if speaker notes should be visible to all viewers
        showNotes: $showNotes$,
$endif$
$if(autoSlide)$
        // Number of milliseconds between automatically proceeding to the
        // next slide, disabled when set to 0, this value can be overwritten
        // by using a data-autoslide attribute on your slides
        autoSlide: $autoSlide$,
$endif$
$if(autoSlideStoppable)$
        // Stop auto-sliding after user input
        autoSlideStoppable: $autoSlideStoppable$,
$endif$
$if(mouseWheel)$
        // Enable slide navigation via mouse wheel
        mouseWheel: $mouseWheel$,
$endif$
$if(rollingLinks)$
        // Apply a 3D roll to links on hover
        rollingLinks: $rollingLinks$,
$endif$
$if(hideAddressBar)$
        // Hides the address bar on mobile devices
        hideAddressBar: $hideAddressBar$,
$endif$
$if(previewLinks)$
        // Opens links in an iframe preview overlay
        previewLinks: $previewLinks$,
$endif$
$if(transition)$
        // Transition style
        transition: '$transition$', // none/fade/slide/convex/concave/zoom
$endif$
$if(transitionSpeed)$
        // Transition speed
        transitionSpeed: '$transitionSpeed$', // default/fast/slow
$endif$
$if(backgroundTransition)$
        // Transition style for full page slide backgrounds
        backgroundTransition: '$backgroundTransition$', // none/fade/slide/convex/concave/zoom
$endif$
$if(viewDistance)$
        // Number of slides away from the current that are visible
        viewDistance: $viewDistance$,
$endif$
$if(parallaxBackgroundImage)$
        // Parallax background image
        parallaxBackgroundImage: '$parallaxBackgroundImage$', // e.g. "'https://s3.amazonaws.com/hakim-static/reveal-js/reveal-parallax-1.jpg'"
$else$
$if(background-image)$
       // Parallax background image
       parallaxBackgroundImage: '$background-image$', // e.g. "'https://s3.amazonaws.com/hakim-static/reveal-js/reveal-parallax-1.jpg'"
$endif$
$endif$
$if(parallaxBackgroundSize)$
        // Parallax background size
        parallaxBackgroundSize: '$parallaxBackgroundSize$', // CSS syntax, e.g. "2100px 900px"
$endif$
$if(parallaxBackgroundHorizontal)$
        // Amount to move parallax background (horizontal and vertical) on slide change
        // Number, e.g. 100
        parallaxBackgroundHorizontal: $parallaxBackgroundHorizontal$,
$endif$
$if(parallaxBackgroundVertical)$
        parallaxBackgroundVertical: $parallaxBackgroundVertical$,
$endif$
$if(width)$
        // The "normal" size of the presentation, aspect ratio will be preserved
        // when the presentation is scaled to fit different resolutions. Can be
        // specified using percentage units.
        width: $width$,
$endif$
$if(height)$
        height: $height$,
$endif$
$if(margin)$
        // Factor of the display size that should remain empty around the content
        margin: $margin$,
$endif$
$if(minScale)$
        // Bounds for smallest/largest possible scale to apply to content
        minScale: $minScale$,
$endif$
$if(maxScale)$
        maxScale: $maxScale$,
$endif$
$if(zoomKey)$
        // Modifier key used to click-zoom to part of the slide
        zoomKey: '$zoomKey$',
$endif$
$if(mathjax)$
        math: {
          mathjax: '$mathjaxurl$',
          config: 'TeX-AMS_HTML-full',
          tex2jax: {
            inlineMath: [['\\(','\\)']],
            displayMath: [['\\[','\\]']],
            balanceBraces: true,
            processEscapes: false,
            processRefs: true,
            processEnvironments: true,
            preview: 'TeX',
            skipTags: ['script','noscript','style','textarea','pre','code'],
            ignoreClass: 'tex2jax_ignore',
            processClass: 'tex2jax_process'
          },
        },
$endif$

menu: {
		// Specifies which side of the presentation the menu will 
		// be shown. Use 'left' or 'right'.
		side: 'left',

		// Specifies the width of the menu.
		// Can be one of the following:
		// 'normal', 'wide', 'third', 'half', 'full', or
		// any valid css length value
		width: 'normal',

		// Add slide numbers to the titles in the slide list.
		// Use 'true' or format string (same as reveal.js slide numbers)
		numbers: false,

		// Specifies which slide elements will be used for generating
		// the slide titles in the menu. The default selects the first
		// heading element found in the slide, but you can specify any
		// valid css selector and the text from the first matching
		// element will be used.
		// Note: that a section data-menu-title attribute or an element
		// with a menu-title class will take precedence over this option
		titleSelector: 'h1, h2, h3, h4, h5, h6',

		// If slides do not have a matching title, attempt to use the
		// start of the text content as the title instead
		useTextContentForMissingTitles: false,

		// Hide slides from the menu that do not have a title.
		// Set to 'true' to only list slides with titles.
		hideMissingTitles: false,

		// Adds markers to the slide titles to indicate the 
		// progress through the presentation. Set to 'false'
		// to hide the markers.
		markers: true,

		// Specify custom panels to be included in the menu, by
		// providing an array of objects with 'title', 'icon'
		// properties, and either a 'src' or 'content' property.
		custom: false,

		// Specifies the themes that will be available in the themes
		// menu panel. Set to 'true' to show the themes menu panel
		// with the default themes list. Alternatively, provide an
		// array to specify the themes to make available in the
		// themes menu panel, for example...
		// [
		//     { name: 'Black', theme: 'css/theme/black.css' },
		//     { name: 'White', theme: 'css/theme/white.css' },
		//     { name: 'League', theme: 'css/theme/league.css' }
		// ]
		themes: false,

		// Specifies the path to the default theme files. If your
		// presentation uses a different path to the standard reveal
		// layout then you need to provide this option, but only
		// when 'themes' is set to 'true'. If you provide your own 
		// list of themes or 'themes' is set to 'false' the 
		// 'themesPath' option is ignored.
		themesPath: 'css/theme/',

		// Specifies if the transitions menu panel will be shown.
		// Set to 'true' to show the transitions menu panel with
		// the default transitions list. Alternatively, provide an
		// array to specify the transitions to make available in
		// the transitions panel, for example...
		// ['None', 'Fade', 'Slide']
		transitions: false,

		// Adds a menu button to the slides to open the menu panel.
		// Set to 'false' to hide the button.
		openButton: true,

		// If 'true' allows the slide number in the presentation to
		// open the menu panel. The reveal.js slideNumber option must 
		// be displayed for this to take effect
		openSlideNumber: false,

		// If true allows the user to open and navigate the menu using
		// the keyboard. Standard keyboard interaction with reveal
		// will be disabled while the menu is open.
		keyboard: true,

		// Normally the menu will close on user actions such as
		// selecting a menu item, or clicking the presentation area.
		// If 'true', the sticky option will leave the menu open
		// until it is explicitly closed, that is, using the close
		// button or pressing the ESC or m key (when the keyboard 
		// interaction option is enabled).
		sticky: false,

		// If 'true' standard menu items will be automatically opened
		// when navigating using the keyboard. Note: this only takes 
		// effect when both the 'keyboard' and 'sticky' options are enabled.
		autoOpen: true,

		// If 'true' the menu will not be created until it is explicitly
		// requested by calling RevealMenu.init(). Note this will delay
		// the creation of all menu panels, including custom panels, and
		// the menu button.
		delayInit: false,

		// If 'true' the menu will be shown when the menu is initialised.
		openOnInit: false,

		// By default the menu will load it's own font-awesome library
		// icons. If your presentation needs to load a different
		// font-awesome library the 'loadIcons' option can be set to false
		// and the menu will not attempt to load the font-awesome library.
		loadIcons: true
	},


        // Optional reveal.js plugins
        dependencies: [
          { src: '$revealjs-url$/lib/js/classList.js', condition: function() { return !document.body.classList; } },
          { src: '$revealjs-url$/plugin/zoom-js/zoom.js', async: true },
$if(notes-server)$
          { src: '$revealjs-url$/socket.io/socket.io.js', async: true },
          { src: '$revealjs-url$/plugin/notes-server/client.js', async: true },
$endif$
$if(mathjax)$
          { src: '$revealjs-url$/plugin/math/math.js', async: true },
$endif$
          { src: '$revealjs-url$/plugin/menu/menu.js'},
          { src: '$revealjs-url$/plugin/markdown/marked.js'},
          { src: '$revealjs-url$/plugin/markdown/markdown.js'},
          { src: '$revealjs-url$/plugin/search/search.js'},
          { src: '$revealjs-url$/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } },
          { src: '$revealjs-url$/plugin/notes/notes.js', async: true }
        ]
      });
    </script>
  $for(include-after)$
  $include-after$
  $endfor$
  </body>
</html>
